#ifndef _S_DS18B20_H_
#define _S_DS18B20_H_

typedef struct
{
    void (*ds18b20_out_init)(void);
    void (*ds18b20_out_high)(void);
    void (*ds18b20_out_low)(void);
    void (*ds18b20_in_init)(void);
    signed char (*ds18b20_read)(void);
    void (*ds18b20_delay_us)(unsigned int time);
}ds18b20_t;

extern signed char s_ds18b20_test(void);
extern signed char s_ds18b20_get_temperature(ds18b20_t *ds, float *temperature);

#endif
